import axios from "axios";
// import { config } from "vue/types/umd";
let instance = axios.create({
    baseURL: '/api',
    timeout: 10000,
})

// 请求拦截器
instance.interceptors.request.use(
    (config) => {
        // console.log("请求之前拦截....1");
        // 在这里统一设置请求头 配置token
        if (config.url === "/sendSMS" || config.url === "/wechatUsers/PCLogin") {
            config.headers["Content-Type"] = "application/x-www-form-urlencoded";
        }
        // 配置token
        let mytoken = localStorage.getItem('x-auth-token')
        if(mytoken){
            // 存在就携带上
            config.headers['x-auth-token'] = mytoken
        }
        return config
    },err=>{
        return Promise.reject(err)
        
    }
);

// 响应拦截器
instance.interceptors.response.use(
    (res) => {
        // console.log("响应之前拦截....2",res);
        // 统一对响应数据进行二次处理(处理错误的情况)
        if (res.data.code != 0 && res.data.code != 400 && res.data.code != 407) {
            // alert(res.data.message);
            this.asyncIsShowToast({
                msg: res.data.message,
                type: "danger",
              });
            return false;
          }
          return res.data;
        },
        (err) => {
          return Promise.reject(err);
        }
)
export default instance;